package nus.mtech.subscription;

import java.util.Date;
import java.util.HashMap;

import nus.mtech.rate.MobileVoiceRate;
import nus.mtech.rate.RateManager;
import nus.mtech.subscription.ExtraFeature.ExtraFeatureType;

/**
 * @author Chew Xunmao
 * 
 */
public class MobileVoice extends Subscription {
	private static final long serialVersionUID = -5805342849104132869L;

	private long telephoneNo;
	private MobileVoiceRate mobileRate = null;
	private HashMap<ExtraFeatureType, ExtraFeature> mapOfExtraFeatures;
	private boolean activeStatus;

	public boolean isActiveStatus() {
		return activeStatus;
	}

	public void setActiveStatus(boolean activeStatus) {
		this.activeStatus = activeStatus;
	}

	public HashMap<ExtraFeatureType, ExtraFeature> getMapOfExtraFeatures() {
		return mapOfExtraFeatures;
	}

	public MobileVoice(Date startDate, Date endDate, boolean activeStatus) {
		super(startDate, endDate, activeStatus);
		mobileRate = RateManager.getRateManagerInstance().getMVRate();
		mapOfExtraFeatures = new HashMap<ExtraFeatureType, ExtraFeature>();
	}

	public void setTelephoneNo(long telephoneNo) {
		this.telephoneNo = telephoneNo;
	}

	public long getTelephoneNo() {
		return telephoneNo;
	}

	public MobileVoiceRate getMobileRate() {
		return RateManager.getRateManagerInstance().getMVRate();
	}
}
